 var SPECIAL_DAYS = {
	0 : [ 13, 24 ],
	4 : [ 1, 6, 8, 12, 18 ],
	11 : [ 25, 28 ]
};

// Esta funcion devuelve verdadero si la fecha pasada en el parametro se encuentra en el array
// requerido, que es SPECIAL_DAYS.
// El formato del array debe ser como el siguiente ej:
// var SPECIAL_DAYS = {
//    0 : [ 13, 24 ],             // dias especiales de Enero
//    2 : [ 1, 6, 8, 12, 18 ],    // dias especiales de Marzo
//   11 : [ 25, 28 ]              // dias especiales de Diciembre
// };
function dateIsSpecial(year, month, day)
{
	if(typeof SPECIAL_DAYS == 'undefined')
		return false; // SPECIAL_DAYS required variable not defined
	var m = SPECIAL_DAYS[month];
	if(!m) return false;
	for (var i in m) if(m[i] == day) return true;
	return false;
}

// Esta funcion devuelve la cadena 'special' que reemplazara al valor de clase de CSS si la fecha pasada
// en el parametro es encontrada por la funcion dateIsSpecial. En caso contrario devuelve falso.
function dateStatusHandlerSpecial(date, y, m, d)
{
	return (dateIsSpecial(y, m, d)) ? 'special' : false;
}

// Esta funcion devuelve verdadero si la fecha pasada en el parametro es encontrada por la funcion
// dateIsSpecial. En caso contrario devuelve falso.
function dateStatusNormal(date, y, m, d)
{
	return dateIsSpecial(y, m, d);
}

// Esta funcion devuelve verdadero si la fecha pasada en el parametro esta entre las fechas minDate y
// maxDate. En caso contrario devuelve falso.
function dateStatus(date)
{
	if(typeof minDate == 'undefined' || typeof maxDate == 'undefined')
		return false; // variables requeridas por dateStatus() no definidas
	var time = date.getTime();
	if(time < minDate.getTime() ||	time > maxDate.getTime())
		return true; // Verdadero deshabilita la fecha
	else
		return false; // Falso deja la fecha habilitada
}

function catcalc(cal) {
	var date = cal.date;
	var time = date.getTime()
	// use the _other_ field
	var field = document.getElementById("f_calcdate");
	if(field == cal.params.inputField)
	{
		field = document.getElementById("f_date_a");
		time -= Date.WEEK; // substract one week
	}
	else
	{
		time += Date.WEEK; // add one week
	}
	var date2 = new Date(time);
	field.value = date2.print("%Y-%m-%d %H:%M");
}